]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
MessageTray: restore symbolic icons to notification buttons
authorGiovanni Campagna <gcampagna@src.gnome.org>
Sat, 19 Jan 2013 17:50:49 +0000 (18:50 +0100)
committerGiovanni Campagna <gcampagna@src.gnome.org>
Sat, 19 Jan 2013 18:41:24 +0000 (19:41 +0100)
These were lost when we moved away with StIconType. The idea was that
apps needed to include -symbolic in their action IDs, but apps were
not updated, and it never makes sense to have non symbolic icons there,
so let's restore the previous behavior.

https://bugzilla.gnome.org/show_bug.cgi?id=692091

js/ui/messageTray.js

index 451afb50842278ba62ae0af0d8c528a39b15c9fe..44d884fe591187229e6d34d8ac78017a4600cc14 100644 (file)
@@ -243,6 +243,10 @@ function makeCloseButton() {
     return closeButton;
 }
 
+function strHasSuffix(string, suffix) {
+    return string.substr(-suffix.length) == suffix;
+}
+
 // Notification:
 // @source: the notification's Source
 // @title: the title
@@ -669,9 +673,10 @@ const Notification = new Lang.Class({
         let button = new St.Button({ can_focus: true });
         button._actionId = id;
 
-        if (this._useActionIcons && Gtk.IconTheme.get_default().has_icon(id)) {
+        let iconName = strHasSuffix(id, '-symbolic') ? id : id + '-symbolic';
+        if (this._useActionIcons && Gtk.IconTheme.get_default().has_icon(iconName)) {
             button.add_style_class_name('notification-icon-button');
-            button.child = new St.Icon({ icon_name: id });
+            button.child = new St.Icon({ icon_name: iconName });
         } else {
             button.add_style_class_name('notification-button');
             button.label = label;